// pages/video/video.js
Page({
  data: {
    videoUrl: '', // 当前视频地址
    videoHistory: [], // 视频历史记录
    currentIndex: -1, // 当前视频索引
    startY: 0, // 开始滑动的 Y 坐标
    threshold: 30, // 滑动阈值
    isFullScreen: false, // 是否全屏
  },

  onLoad: function() {
    this.playRandomVideo(); // 初始化视频
  },

  touchStart: function(event) {
    this.setData({
      startY: event.touches[0].clientY,
    });
  },

  touchMove: function(event) {
    const endY = event.touches[0].clientY;
    const distanceY = this.data.startY - endY;

    // 如果是全屏状态，阻止上下滑动调节音量
    if (this.data.isFullScreen) {
      event.preventDefault();
    }
  },
// 新增：视频播放结束时触发，自动播放下一个
handleVideoEnd: function() {
  this.playNextVideo(); // 直接调用现有“下一个视频”方法
},
  touchEnd: function(event) {
    const endY = event.changedTouches[0].clientY;
    const distanceY = this.data.startY - endY;

    if (Math.abs(distanceY) > this.data.threshold) {
      if (distanceY > 0) {
        // 上滑，播放下一个视频
        this.playNextVideo();
      } else {
        // 下滑，播放上一个视频
        this.playPreviousVideo();
      }
    }
  },

  playRandomVideo: function() {
    const that = this;
    const types = ['明星', '热舞', '风景', '游戏', '动物', '动漫'];

    // 随机选择一个视频类型
    const randomType = types[Math.floor(Math.random() * types.length)];
    
    wx.request({
      url: `https://api.lolimi.cn/API/sjsp/api.php?msg=${randomType}&type=json`,
      method: 'GET',
      success: function(res) {
        console.log(res); // 打印获取到的完整数据
        if (res.data.code === 1) {
          const newVideoUrl = res.data.data.url;

          // 如果当前是初次加载，或者当前索引大于等于0，重新设置历史记录
          if (that.data.currentIndex >= 0) {
            // 如果当前索引大于或等于0，表示已有历史视频，更新历史记录
            that.setData({
              videoHistory: that.data.videoHistory.slice(0, that.data.currentIndex + 1) // 截取到当前索引
            });
          }

          // 添加新视频
          that.setData({
            videoHistory: [...that.data.videoHistory, newVideoUrl], // 添加新视频
            currentIndex: that.data.videoHistory.length, // 当前索引指向新视频
            videoUrl: newVideoUrl // 设置当前视频
          });
        } else {
          wx.showToast({
            title: '获取视频失败',
            icon: 'none'
          });
        }
      },
      fail: function() {
        wx.showToast({
          title: '请求失败',
          icon: 'none'
        });
      }
    });
  },

  playNextVideo: function() {
    this.playRandomVideo(); // 请求新视频并存储
  },

  playPreviousVideo: function() {
    const { currentIndex, videoHistory } = this.data;

    if (currentIndex > 0) {
      // 找到前一个视频并播放
      const previousVideo = videoHistory[currentIndex - 1];
      this.setData({
        videoUrl: previousVideo,
        currentIndex: currentIndex - 1
      });
    } else {
      wx.showToast({
        title: '没有上一个视频',
        icon: 'none'
      });
    }
  },

  bindfullscreenchange: function(event) {
    this.setData({
      isFullScreen: event.detail.fullScreen // 更新全屏状态
    });
  }
});